#include"head.h"
int ser_jwt(char *username,char *password,char **f_jwt)
{   

    *f_jwt = (char *)malloc(500);

    char *jwt;

    // JWT字符串的长度
    size_t jwt_length;

    // 初始化编码参数结构体
    struct l8w8jwt_encoding_params params;
    l8w8jwt_encoding_params_init(&params);

    // 设置JWT使用的算法，这里使用HS512
    params.alg = L8W8JWT_ALG_HS512;

    // 设置JWT的主要荷载部分内容:
    // 主题
    params.sub = "project name";
    // 签发者
    params.iss = username;
    // 接收方
    params.aud = password;
    // token过期/有效时间(0x7fffffff:最大值-> 2038年1月19日)
    params.exp = 0x7fffffff;
    // token签发时间
    params.iat = 0;

    // 设置加密密钥
    params.secret_key = (unsigned char*)"snow string token key";
    params.secret_key_length = strlen((char *)params.secret_key);

    // 输出变量
    params.out = &jwt;
    params.out_length = &jwt_length;

    // 加密
    l8w8jwt_encode(&params);

    strcpy(*f_jwt,jwt);
    //printf("函数内jwt2： %s \n", f_jwt);
    // 释放token 字符串的内存
    l8w8jwt_free(jwt);

    return 0;
}

